home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SGI Developer Toolbox 6.1
/
SGI Developer Toolbox 6.1 - Disc 4.iso
/
documents
/
irix5.2plusNewProds
/
usr_share_guidelines
< prev
Wrap
Text File
|
1994-08-01
|
3KB
|
70 lines
======================================================================
Guidelines for the use of the /usr/share filesystem
Prepared by Mark Callow (msc@sgi.com)
Introduction
------------
Shortly before IRIX 5.2 MR'ed, I discovered that it was impossible to
install the insight client software when your /usr/share is mounted
from another host. The priority 1 bug I filed was made an exception
with the comments that a) the release notes should say that we do not
yet fully support /usr/share and b) we should publish some guidelines
about /usr/share for the benefit of our internal developers.
Since I don't think anyone else is writing any guidelines and since I
have a bit of time right now, I decided to do it. I'm forwarding this
to Tom Murphy for inclusion in whatever internal guide he feels is
appropriate.
I welcome comments and additions to these guidelines.
Purpose Of /usr/share
---------------------
/usr/share is intended as a repository for machine independent
executables and data files which can be shared between hosts by
cross mounting the entire directory. The main goal in inventing it
was to reduce the amount of disk spaced required on the local host.
It meets this goal principally by making it easy to nfs mount this
huge amount of data.
Prime candidates for inclusion in /usr/share are things like the
Insight books, the man pages, and the huge files of clip data for
applications such as Inventor, Explorer, Showcase and the digital media
tools.
It is important to note that /usr/share will typically be mounted read-only.
Guidelines
----------
Given the purpose, three prime requirements become immediately
obvious.
1. A software product planning to install files in /usr/share must
put those files in a separate subsystem and at least the description
of that subsystem must say that it installs in /usr/share.
2. A product must never have hard prerequisites on something in
/usr/share because, on a machine with a mounted /usr/share, inst
will not be able to tell that the prerequisite software is present.
3. A product must never use /usr/share for any file intended to be
written to in the normal course of the product's operation.
If these requirements are met, a product will be fully /usr/share
friendly.
Number 3 raises the issue of where to put items that are to be available
for collaborative update. Examples of these items are annotations for the
Insight books, adapted templates for speech recognition and
collaborative databases such as cdman's music catalog. Since many sites
want to mount the entire /usr partition read-only these items should not
be put anywhere in /usr. Such items should be placed in /var/public.
Each product should have its own subdirectory (e.g. /var/public/Insight).